<!DOCTYPE html>
<html>
  <head>

    <!-- prettify js and CSS -->
    <link rel="stylesheet" href="{{ site.baseurl }}/resources/css/prettify.css" type="text/css" />
    <script src="{{ site.baseurl }}/resources/js/vendor/prettify/prettify.js" type="text/javascript" ></script>

    <!-- jquery js -->
    <script src="{{ site.baseurl }}/resources/js/jquery.js" type="text/javascript" ></script>
    <script src="{{ site.baseurl }}/resources/js/effects.core.js" type="text/javascript" ></script>
    <script src="{{ site.baseurl }}/resources/js/effects.highlight.js" type="text/javascript" ></script>

    <!-- Bootstrap JS and CSS -->
    <link rel="stylesheet" href="{{ site.baseurl }}/resources/css/bootstrap.css" type="text/css" />
	<script src="{{ site.baseurl }}/resources/js/bootstrap-dropdown.js" type="text/javascript" ></script>
	<script src="{{ site.baseurl }}/resources/js/bootstrap-dropdown-app.js" type="text/javascript" ></script>

    <!-- Base stylesheet for all pages -->
    <link rel="stylesheet" href="{{ site.baseurl }}/resources/css/base.css" type="text/css" />
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css" />
    <link rel="stylesheet" href="{{ site.baseurl }}/resources/css/search.css" type="text/css" />

    <!-- table of contents js -->
    <script src="{{ site.baseurl }}/resources/js/toc.js" type="text/javascript" ></script>

    <!-- reformat lists, add id of glossary term to li -->
    <script type="text/javascript">
    jQuery(document).ready(function($) {
          $("li h4").each(function() {
			  var h4Id = $(this).attr('id');
			  $(this).parent().attr('id',h4Id);
          });
      });
    </script>

    <!-- google analytics -->
	<script type="text/javascript">

	  var _gaq = _gaq || [];
	  _gaq.push(['_setAccount', 'UA-574683-5']);
	  _gaq.push(['_trackPageview']);

	  (function() {
	    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
	    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
	    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
	  })();

	</script>


    <!-- prettyprint js to prepend generated pre/code tags -->
    <script type="text/javascript">
      function styleCode()
        {
          if (typeof disableStyleCode != "undefined")
          {
              return;
          }
          var a = false;
          $("pre code").parent().each(function()
          {
              if (!$(this).hasClass("prettyprint"))
              {
                  $(this).addClass("prettyprint lang-scala linenums");
                  a = true
              }
          });
          if (a) { prettyPrint() }
      }
    </script>

    <!-- text filtering -->
    <script type="text/javascript">
  	  $(window).load(function(){

		  $('#filter-glossary-terms').focus();

	      $("#filter-glossary-terms").keydown(function(){

	          // Retrieve the input field text and reset the count to zero
	          var filter = $(this).val(), count = 0;

	          // Loop through the comment list
	          $("#glossary ul li").each(function(){

  	              // If the name of the glossary term does not contain the text phrase fade it out
	              if ( jQuery(this).find("h4").text().search(new RegExp(filter, "i")) < 0) {
	                  $(this).fadeOut();

	              // Show the list item if the phrase matches and increase the count by 1
	              } else {
	                  $(this).show();
	                  count++;
	              }

	          });

	          // Update the count
	          var numberItems = count;
	          $("#filter-count").text("Found "+count+" occurrences.");

	      });
	  });
	</script>

    <script type="text/javascript">
      jQuery(document).ready(function($) {

        // Scroll to glossary term specified by hash on page load
        hash = window.location.hash;
        if (hash != '') {
          $('html,body').animate({scrollTop:$('li '+hash).offset().top}, 500);
          $('html,body').animate({scrollTop:$('li '+hash).offset().top-=50}, 500);
          $('li '+hash+',li '+hash+'+ p').effect("highlight", {color: "#FFCC85"}, 3000);
        }

        // Set scroll animation for glossary term links within page
        $("#glossary a[href^='#']").click(function(event) {
          event.preventDefault();
          $('html,body').animate({scrollTop:$('li '+this.hash).offset().top}, 500);
          $('html,body').animate({scrollTop:$('li '+this.hash).offset().top-=50}, 500);
          $('li '+this.hash+',li '+this.hash+'+ p').effect("highlight", {color: "#FFCC85"}, 3000);
          window.location.hash = this.hash;
        });
      });
    </script>

    <style type="text/css">
      html, body {
	     padding-top: 0px;
	     height: 100%;
		  -webkit-box-shadow: inset 0 10px 50px rgba(0,0,0,.6);
		     -moz-box-shadow: inset 0 10px 50px rgba(0,0,0,.6);
		/*          box-shadow: inset 0 10px 30px rgba(0,0,0,.3);*/
	  }
	  .scrollingmenu {
		  width: 940px;
		  margin-left: auto;
		  margin-right: auto;
		  height: 70px;
		  zoom: 1;
	}
	.scrollingmenu h1 {
      padding-bottom: 30px;
	  color: #ffffff;
	  font-size: 42px;
	  line-height: 1;
	  text-shadow: 0 1px 2px rgba(0,0,0,.5);
	}
    .container {
	   min-height: 100%;
    }
    .bottom {
	   min-height: 100%;
	   background-color: #ffffff;
	   padding-top: 20px;
	   border-top: 1px solid #8e397d;
	}
	.bottom h1,h2,h3 {
		text-shadow: 0 1px 2px rgba(255,255,255,.5);
	}
	.bottom h1,h2,h3 a {
                color: #404040;
		text-shadow: 0 1px 2px rgba(255,255,255,.5);
	}

	.bottom small {
                color: #808080;
		text-shadow: 0 1px 1px rgba(255,255,255,.5);
	}

	.bottom p.under {
                color: #808080;
		text-shadow: 0 1px 1px rgba(255,255,255,.5);
		font-size: 18px;
		line-height: 36px;
		margin-top: -25px;
	}

        .bottom ul {
                margin: -4px 0 4px 25px;
                list-style: none;
        }

        .bottom ul li {
                margin-bottom: 6px;
         }

	    .bottom ul li p {
	       color: #606060;
	    }


        .bottom ul li h4 {
                line-height: 24px;
				padding-bottom: 4px;
         }

        .bottom table {
          border-top: 0px;
          border-left: 0px;
          border-right: 0px;
        }

        .bottom table thead {
          border: 0px;
        }

        .bottom table tbody {
          border: 0px;
        }

        .bottom table th, .bottom table td {
          padding: 0 0 0 20px;
          line-height: 20px;
          border-left: 0px;
        }

        .page-header-index{margin-bottom:17px;border-bottom:1px solid #808080;-webkit-box-shadow:0 1px 0 rgba(255, 255, 255, 0.5);-moz-box-shadow:0 1px 0 rgba(255, 255, 255, 0.5);box-shadow:0 1px 0 rgba(255, 255, 255, 0.5);}

       p.contents {
           margin-left: 15px;
           font-weight: bold;
           font-size: 16px;
       }

       div#toc ul {
           list-style: none;
           padding-bottom: 20px;
		   margin-top: 10px;
       }

       div#toc ul a {
           display: block;
           list-style: none;
           line-height: 13px;
           font-size: 13px;
           color: #0069D6;
           font-weight: bold;
           width: 100%;
       }

       div#scroller-anchor {
           width: inherit;
       }

       div#scroller {
           width: inherit;
       }

       div#scroller h6 {
           padding-left: 14px;
       }

       p#about {
      	 margin-top: -8px;
         padding-left: 14px;
       }

       input, textarea, select, .uneditable-input {
	       width: 165px;
	   }

	.bottom p.under {
                color: #808080;
		text-shadow: 0 1px 1px rgba(255,255,255,.5);
		font-size: 18px;
		line-height: 36px;
		margin-top: -25px;
	}

	.filterbar {
	  position: relative;
	  padding: 7px 15px;
      margin-left: 10px;
	  margin-bottom: 24px;
	  color: #404040;
	  background-color: #bcbcbc;
	  background-repeat: repeat-x;
	  background-image: -khtml-gradient(linear, left top, left bottom, from(#dddddd), to(#bcbcbc));
	  background-image: -moz-linear-gradient(top, #dddddd, #bcbcbc);
	  background-image: -ms-linear-gradient(top, #dddddd, #bcbcbc);
	  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #dddddd), color-stop(100%, #bcbcbc));
	  background-image: -webkit-linear-gradient(top, #dddddd, #bcbcbc);
	  background-image: -o-linear-gradient(top, #dddddd, #bcbcbc);
	  background-image: linear-gradient(top, #dddddd, #bcbcbc);
	  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#dddddd', endColorstr='#bcbcbc', GradientType=0);
	  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	  border-color: #bcbcbc #bcbcbc #808080;
	  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
	  border-width: 1px;
	  border-style: solid;
	  -webkit-border-radius: 4px;
	  -moz-border-radius: 4px;
	  border-radius: 4px;
	  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
	  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
	  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
	}

	.filterbar input{
		background-color:#ffffff;
		background-color:rgba(255, 255, 255, 1);
		font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
		font-size:normal;
		font-weight:13px;
		line-height:1;
		padding:4px 9px;
		color:#404040;
		border:1px solid #808080;
		-webkit-border-radius:4px;
		-moz-border-radius:4px;
		border-radius:4px;
		-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1),0 1px 0px rgba(255, 255, 255, 0.4);
		-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1),0 1px 0px rgba(255, 255, 255, 0.4);
		box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1),0 1px 0px rgba(255, 255, 255,0.4);
		-webkit-transition:none;
		-moz-transition:none;
		-ms-transition:none;
		-o-transition:none;
		transition:none;
	}

	.filterbar input:-moz-placeholder {color:#e6e6e6;}

	.filterbar .title {
	  font-size: 16px;
	  font-weight: bold;
	  color: #404040;
	  text-shadow: 0 1px 0 rgba(255,255,255,.5);
	  margin-right: 8px;
	}

   </style>

</head>
  <body>
